popover: Stop using gtk_widget_input_shape_combine_region()
authorTimm Bäder <mail@baedert.org>
Sat, 22 Feb 2020 14:28:44 +0000 (15:28 +0100)
committerTimm Bäder <mail@baedert.org>
Tue, 25 Feb 2020 13:18:24 +0000 (14:18 +0100)
We control the surface anyway, we can as well set the input shape on it
directly.

gtk/gtkpopover.c

index f928041973e6f510113baa43697be64379a810c3..404bdc9b1dbf82422db361f71d234e12a8eff23a 100644 (file)
@@ -1155,11 +1155,9 @@ static void
 gtk_popover_update_shape (GtkPopover *popover)
 {
   GtkPopoverPrivate *priv = gtk_popover_get_instance_private (popover);
-  GtkWidget *widget = GTK_WIDGET (popover);
 
   if (priv->has_arrow)
     {
-
       cairo_surface_t *cairo_surface;
       cairo_region_t *region;
       cairo_t *cr;
@@ -1177,11 +1175,11 @@ gtk_popover_update_shape (GtkPopover *popover)
       region = gdk_cairo_region_create_from_surface (cairo_surface);
       cairo_surface_destroy (cairo_surface);
 
-      gtk_widget_input_shape_combine_region (widget, region);
+      gdk_surface_input_shape_combine_region (priv->surface, region, 0, 0);
       cairo_region_destroy (region);
     }
   else
-    gtk_widget_input_shape_combine_region (widget, NULL);
+    gdk_surface_input_shape_combine_region (priv->surface, NULL, 0, 0);
 }
 
 static gint